Systems, devices, and methods for in-field diagnosis of growth stage and crop yield estimation in a plant area

ABSTRACT

Methods, devices, and systems may be utilized for detecting one or more properties of a plant area and generating a map of the plant area indicating at least one property of the plant area. The system comprises an inspection system associated with a transport device, the inspection system including one or more sensors configured to generate data for a plant area including to: capture at least 3D image data and 2D image data; and generate geolocational data. The datacenter is configured to: receive the 3D image data, 2D image data, and geolocational data from the inspection system; correlate the 3D image data, 2D image data, and geolocational data; and analyze the data for the plant area. A dashboard is configured to display a map with icons corresponding to the proper geolocation and image data with the analysis.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation of U.S. patent application Ser. No.16/031,801, filed Jul. 10, 2018, the disclosure of which is herebyincorporated herein in its entirety by this reference.

FIELD

The disclosure relates generally to systems and methods for in-fielddiagnosis of growth stage and crop yield estimation. In particular, thedisclosure relates to systems, devices, and methods for in-fielddiagnosis of the growth stage and crop yield estimation in a plant areaand generating a three-dimensional map showing the results.

BACKGROUND

Accurate and timely machine counting of fruit on the tree or vine haslong been considered impossible or impractical. Conventional methodsrely on manual estimation and are often inaccurate and labor intensive.Inaccurate estimates lead to inaccurate crop forecasts and complicatepricing and farmers' ability to forecast and plan.

Accurate crop yield estimation may help farmers improve fruit qualityand reduce operating cost by making better decisions on intensity offruit thinning and size of the harvest labor force. The packing industrymay be benefitted as well, because managers can use estimation resultsto optimize packing and storage capacity. Typical crop yield estimationis performed based on historical data, weather conditions, and workersmanually counting fruit in multiple sampling locations. This process istime-consuming and labor-intensive, and the limited sample size isusually not enough to reflect the yield distribution across, forexample, an entire the orchard. Therefore, the common crop yieldestimation practices are inaccurate and inefficient.

Recently, three dimensional and image-based sensing have been applied tomany aspects of tree-crop precision agriculture. There are many examplesof the use of LiDAR (“Light Detection and Ranging”) scanners to measuretree canopy geometry. Alternative range sensors have also been usedincluding ultrasound, structured light, and stereo vision, but LiDAR ispopular given the relatively high accuracy and invariance under naturalillumination conditions.

Vision sensors have been coupled with machine vision algorithms toestimate fruit and flower densities for individual trees for a number ofdifferent crop types. Digital cameras and relatively simple imageclassification algorithms have been used to estimate flower densities.Relatively simple algorithms are possible due to the typically highcolor contrast exhibited by flowers. Machine vision cameras have alsobeen mounted on tractors to improve the image acquisition, which allowedflower estimation on larger numbers of trees. Nevertheless, the processrequires manual demarcation of the individual trees within the frames,which limits the efficiency when scaling up to scan entire commercialorchard blocks.

Unlike flowers, fruit and nuts are often visually similar to the leavesand surrounding foliage of trees, meaning that more sophisticatedmachine vision methods are required to automatically detect them.

BRIEF SUMMARY

In some embodiments, the present disclosure includes a crop yieldestimation system for detecting one or more properties of a plant area.The system comprises an inspection system associated with a transportdevice, the inspection system including one or more sensors configuredto generate data for a plant area including to: capture at least 3Dimage data and 2D image data; and generate geolocational data. Thedatacenter is configured to: receive the 3D image data, 2D image data,and geolocational data from the inspection system; correlate the 3Dimage data, 2D image data, and geolocational data; and analyze the datafor the plant area. A dashboard is configured to display a map withicons corresponding to the proper geolocation and image data with theanalysis.

In still other embodiments, the present disclosure includes a system forgenerating a map of an area of plants indicating at least one propertyof the area of plants. The system may comprise an inspection system, adatacenter in communication with the inspection system, and a dashboard.The inspection system may be configured to generate area data from thearea of plants. The datacenter may be configured to analyze the areadata, characterize the area data, and generate analysis results, andgenerate the map of the area using the analysis results in which anindication of the at least one property is visible in the map andwherein the location of the at least one property within the digitalmodel corresponds to one or more locations of the at least one propertyin the area of plants. The dashboard may be configured to display themap.

In still other embodiments, the present disclosure includes a method forgenerating a map of an area of plants indicating one or more propertiesof one or more plants in the area of plants. The method may comprisemoving an inspection system across the area of plants; collecting, withthe inspection system, area data comprising laser-scan data (e.g., LiDARscan data, stereoscopic cameras, etc.), image data, environment data,and geo-reference data; pre-processing, with the inspection system, thearea data; geo-referencing, with the inspection system, the area data;communicating, with the inspection system, the area data to a datacenterremote to the inspection system; analyzing, with the datacenter, thearea data and generating analysis results; generating, with thedatacenter, a map using the analysis results and the geo-reference datain which an indication of the one or more properties is visible in themap and the location of the one or more properties in the digital mapcorresponds to the location of the one or more properties in the area ofplants; and displaying the map on dashboard viewable by a user.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a crop yield estimation system according toan embodiment of the present disclosure.

FIG. 2 is a simplified block diagram of the inspection system of FIG. 1.

FIG. 3 is a block diagram of the data processing system of FIG. 1.

FIG. 4 is a block diagram of the inspection system of FIG. 1 and FIG. 2further showing data flow according to an embodiment of the disclosure.

FIG. 5 is a simplified block diagram of the datacenter of FIG. 1 andFIG. 3 further showing data flow according to an embodiment of thedisclosure.

FIG. 6 is a block diagram showing various knowledge base data sourcesaccording to an embodiment of the disclosure.

FIG. 7 is a flowchart illustrating a method for image segmentationaccording to an embodiment of the disclosure.

FIG. 8 is a flowchart illustrating a method for point cloudreconstruction of a plant according to an embodiment of the disclosure.

FIG. 9 is a schematic block diagram representing the dashboard accordingto embodiments of the disclosure.

FIG. 10 is a screenshot of an exemplary view of the dashboard accordingto embodiments of the disclosure.

FIG. 11 is a flowchart illustrating a method for generating a map of aplant area showing area data in the map.

DETAILED DESCRIPTION

In the following detailed description, reference is made to theaccompanying drawings, which form a part hereof, and in which are shown,by way of illustration, specific examples of embodiments in which thepresent disclosure may be practiced. These embodiments are described insufficient detail to enable a person of ordinary skill in the art topractice the present disclosure. However, other embodiments may beutilized, and structural, system, and process changes may be madewithout departing from the scope of the disclosure. The illustrationspresented herein are not meant to be actual views of any particularprocess, system, device, or structure, but are merely idealizedrepresentations that are employed to describe the embodiments of thepresent disclosure. The drawings presented herein are not necessarilydrawn to scale. Similar structures or components in the various drawingsmay retain the same or similar numbering for the convenience of thereader; however, the similarity in numbering does not mean that thestructures or components are necessarily identical in size, composition,structure, configuration, logic, or any other property.

Furthermore, specific implementations shown and described are onlyexamples and should not be construed as the only way to implement thepresent disclosure unless specified otherwise herein. Elements,connections, circuits, and functions may be shown in block diagram formin order not to obscure the present disclosure in unnecessary detail.Additionally, block definitions and partitioning of logic betweenvarious blocks is exemplary of a specific implementation. It will bereadily apparent to one of ordinary skill in the art that the presentdisclosure may be practiced by numerous other partitioning solutions.For the most part, details concerning timing considerations and the likehave been omitted where such details are not necessary to obtain acomplete understanding of the present disclosure and are within theabilities of persons of ordinary skill in the relevant art.

Those of ordinary skill in the art would understand that information andsignals may be represented using any of a variety of differenttechnologies and techniques. For example, data, instructions, commands,information, signals, bits, symbols, and chips that may be referencedthroughout this description may be represented by voltages, currents,electromagnetic waves, magnetic fields or particles, optical fields orparticles, or any combination thereof. Some drawings may illustrateinformation and signals as a single data packet or single signal forclarity of presentation and description. It will be understood by aperson of ordinary skill in the art that the data packet or signal mayrepresent a bus of signals or series of data packets. A bus may have avariety of bit widths and the present disclosure may be implemented onany number of data signals including a single data signal.

The various illustrative logical blocks, modules, and circuits describedin connection with the embodiments disclosed herein may be implementedor performed with a general purpose processor, a special purposeprocessor, a digital signal processor (DSP), an integrated circuit (IC),an application specific integrated circuit (ASIC), a field programmablegate array (FPGA) or other programmable logic device, discrete gate ortransistor logic, discrete hardware components, or any combinationthereof designed to perform the functions described herein.

A general-purpose processor may be a microprocessor, but in thealternative, the processor may be any conventional processor,controller, microcontroller, or state machine. A processor may also beimplemented as a combination of computing devices, such as a combinationof a DSP and a microprocessor, a plurality of microprocessors, one ormore microprocessors in conjunction with a DSP core, or any other suchconfiguration. A general-purpose computer including a processor isconsidered a special-purpose computer while the general-purpose computeris configured to execute computing instructions (e.g., software code)related to embodiments of the present disclosure. Examples of computersinclude personal computers, workstations, laptops, tablets, mobilephones, wearable devices, and computer-servers.

The embodiments may be described in terms of a process that is depictedas a flowchart, a flow diagram, a structure diagram, or a block diagram.Although a flowchart may describe operational acts as a sequentialprocess, many of these acts can be performed in another sequence, inparallel, or substantially concurrently. In addition, the order of theacts may be re-arranged. A process may correspond to a method, a thread,a function, a procedure, a subroutine, a subprogram, etc. Furthermore,the methods disclosed herein may be implemented in hardware, software,or both. If implemented in software, the functions may be stored ortransmitted as one or more instructions or code on computer-readablemedia. Computer-readable media includes both computer storage media andcommunication media including any medium that facilitates transfer of acomputer program from one place to another.

Many of the functional units described may be illustrated, described orlabeled as modules, threads, or other segregations of programming code,in order to more particularly emphasize their implementationindependence. Modules may be at least partially implemented in hardware,in one form or another. For example, a module may be implemented as ahardware circuit comprising custom VLSI circuits or gate arrays,off-the-shelf semiconductors such as logic chips, transistors, or otherdiscrete components. A module may also be implemented in programmablehardware devices such as field programmable gate arrays, programmablearray logic, programmable logic devices, or the like.

Modules may also be implemented using software or firmware, stored on aphysical storage device (e.g., a computer readable storage medium), inmemory, or a combination thereof for execution by various types ofprocessors. An identified module of executable code may, for instance,comprise one or more physical or logical blocks of computerinstructions, which may, for instance, be organized as a thread, object,procedure, or function. Nevertheless, the executable of an identifiedmodule need not be physically located together, but may comprisedisparate instructions stored in different locations which, when joinedlogically together, comprise the module and achieve the stated purposefor the module. Indeed, a module of executable code may be a singleinstruction, or many instructions, and may even be distributed overseveral different code segments, among different programs, and acrossseveral storage or memory devices. Similarly, operational data may beidentified and illustrated herein within modules, and may be embodied inany suitable form and organized within any suitable type of datastructure. The operational data may be collected as a single data set,or may be distributed over different locations including over differentstorage devices, and may exist, at least partially, merely as electronicsignals on a system or network. Where a module or portions of a moduleare implemented in software, the software portions are stored on one ormore physical devices, which are referred to herein as computer readablemedia.

Indeed, a module of executable code may be a single instruction, or manyinstructions, and may even be distributed over several different codesegments, among different programs, and across several storage or memorydevices. Similarly, operational data may be identified and illustratedherein within modules, and may be embodied in any suitable form andorganized within any suitable type of data structure. The operationaldata may be collected as a single data set, or may be distributed overdifferent locations including over different storage devices, and mayexist, at least partially, merely as electronic signals on a system ornetwork. Where a module or portions of a module are implemented insoftware, the software portions are stored on one or more physicaldevices, which are referred to herein as computer readable media.

In some embodiments, the software portions are stored in anon-transitory state such that the software portions, or representationsthereof, persist in the same physical location for a period of time.Additionally, in some embodiments, the software portions are stored onone or more non-transitory storage devices, which include hardwareelements capable of storing non-transitory states and/or signalsrepresentative of the software portions, even though other portions ofthe non-transitory storage devices may be capable of altering and/ortransmitting the signals. Examples of non-transitory storage devices areflash memory and random-access-memory (RAM). Another example of anon-transitory storage device includes a read-only memory (ROM) whichcan store signals and/or states representative of the software portionsfor a period of time. However, the ability to store the signals and/orstates is not diminished by further functionality of transmittingsignals that are the same as or representative of the stored signalsand/or states. For example, a processor may access the ROM to obtainsignals that are representative of the stored signals and/or states inorder to execute the corresponding software instructions.

As used in this specification, the terms “substantially,” “about,” and“approximately” in reference to a given parameter, property, orcondition means and includes to a degree that one skilled in the artwould understand that the given parameter, property, or condition is metwith a small degree of variance, such as within acceptable manufacturingtolerances. For example, a parameter that is substantially met may be atleast about 90% met, at least about 95% met, or even at least about 99%met.

Embodiments of the disclosure include a sensor apparatus, system, andrelated method for performing for in-field diagnosis of growth stage andcrop yield estimation of fruit orchards. More particularly, disclosedembodiments generally relate to systems and methods for capturing areadata, the area data comprising: laser-scan data (e.g., 3D laser scans),image data (e.g., images captured by a high-definition visual camera),environment data (e.g., temperature, humidity, sunlight levels, etc.),and geo-referencing data (e.g., global positioning system (GPS) data);analyzing the data using machine learning and statistical algorithms;comparing the data with a database containing samples of different fruittypes and harvest stages; making classifications (e.g., quantity, size,and stage of the fruit's ripeness; presence and quantity of flowers,state of the tree health through leaf coloring; possibility ofabnormalities such as diseases and nutrient deficiencies of the tree,and other suitable classifications); and generating a map showing theanalysis results.

The sensor apparatus may be mounted on machinery (e.g., tractors),autonomous robots, or other transport devices, and be used to capturesensor data about the state of the plant area on periodic intervals(e.g., every two weeks). The transport device may move along, forexample, orchard while the inspection system collects orchard data. Forexample, the inspection device may collect: image data from one or morehigh-definition cameras; laser scan data from a 2D or 3D laser scanner;geo-reference data (e.g., latitude and longitude) from a survey-gradeglobal positioning system (GPS); and environment data (e.g.,temperature, humidity, air pressure, sunlight levels, etc.) from aplurality of environment sensors (e.g., thermometer, hygrometer,barometer, etc.). The data may then by uploaded to a datacenter facilitythat implements a suite of software with machine learning (e.g., deeplearning techniques) and statistical algorithms to analyze the data. Inparticular, the datacenter facility may compare the collected dataagainst a database containing several samples of different fruit typesand harvest stages, and classifies the following: quantity, size andstage of the fruits' ripeness; presence and quantity of flowers; stateof the tree health through its leaves coloring; possibility ofabnormalities such as diseases and nutrient deficiencies of the tree.With the classified information, the datacenter may also comparehistorical data of the plant area and generate a map with the resultinganalysis, which may then be presented to the user (e.g., a farmer orother client). The datacenter may analyze the resulting analysis togenerate automated recommendations on the dosing of fertilizers andpesticides on a detailed level (e.g., cells of few meters size).

FIG. 1 is a block diagram of a crop yield estimation system 100 (alsoreferred to as “system 100”) according to an embodiment of the presentdisclosure. The crop yield estimation system 100 includes an inspectionsystem 104, a transport device 106, a datacenter 108, and a dashboard110. The inspection system 104 may be mounted to the transport device tosurvey a plant area to determine one or more properties (e.g., growthstage, estimated crop yield, estimated plant health, etc.) thereof. Theplant area to be surveyed may take various forms. For example, the plantarea may include an orchard, a farm, a grove, a tree farm, a plantation,a nursery, a vineyard, and/or some other suitable area containing plantsto be surveyed. The datacenter 108 may be located remote to theinspection system 104. The datacenter 108 may provide the processing andanalysis for a number of different users (i.e., clients) of the system100 subscribed to the service provided thereby. The dashboard 110 may belocated remote to the inspection system 104 and the datacenter 108, andbe associated with a particular user of the system 100.

The inspection system 104 may comprise one or more devices and/orsensors configured to inspect the plant area to be surveyed and togenerate data about the plant area. For example, an inspection system104 may comprise one or more of a 3D laser scanner (LiDAR), a 2D laserscanner (LiDAR), a stereoscopic camera, an inertial movement unit (IMU),an actinometer, an altimeter, an anemometer, a barometer, a clock, adisdrometer, a global positioning system (GPS), a survey grade GPS, areal-time kinematic (RTK) positioning system, a high-resolution camera,a high-resolution infrared (IR) camera, a hygrometer, a pyrheliometer, apsychrometer, a pyranometer, a rain gauge, a thermometer, a solarirradiance sensor, a radio transceiver, and other suitable devicesand/or sensors.

The inspection system 104 may be a separate device mounted on thetransport device 106. In some embodiments the inspection system 104 maybe integrated with the transport or mobile platform. The transportdevice or mobile platform 106 may take various forms. For example, thetransport device 106 may comprise a vehicle such as a tractor or otherfarm machinery, an all-terrain vehicle (ATV), a four-wheeler, an aerialdrone or other aerial device, a robot, or other suitable transportdevice. In some embodiments, the transport device 106 may be configuredto operate autonomously (e.g., an autonomous vehicle). In otherembodiments, the transport device 106 may be configured to operate underhuman control.

In some embodiments, portions of the inspection system 104 may bemounted on the transport device or mobile platform 106 while otherportions of the inspection system 104 may be stationary. For example, inone embodiment the inspection system 104 may comprise a laser scanner, asurvey-grade GPS, a rain gauge, a thermometer, and a hygrometer. Thelaser scanner and survey-grade GPS may be mounted on a mobile platformor transport device 106, while the rain gauge, thermometer, andhygrometer may be stationary. In other embodiments, portions of theinspection system 104 may be mounted on one or more transport devices ormobile platforms 106 while other portions of the inspection system 104may be stationary.

In operation, the inspection system 104, utilizing suitable sensors anddevices as described above, may generate area data 116. The area data116 may comprise image data 118, laser scan data 120, geo-reference data124, and environment data 128.

The image data 118 may comprise images recorded by one or morehigh-resolution cameras, high-resolution IR cameras, and/or othersuitable cameras. In some embodiments the images may be high-resolutioncolor images. In other embodiments, the images may be high-resolution IRimages. The inspection system 104, utilizing a high-resolution cameraand/or a high-resolution IR camera, may be configured to generate theimage data 118.

The laser scan data 120 may comprise range data collected from one ormore 2D laser scanners, 3D scanners, other type of LiDAR (“LightDetection and Ranging”) scanners, or other type of range measurementdevices. The range data may comprise 3D coordinate data (x, y, zcoordinates) relative to the 3D scanner, or some other suitable point oforigin. The inspection system 104 may be configured to generate thelaser scan data 120 (x, y, z coordinates) of plants within the plantarea to be surveyed relative to the 3D scanner, or some other suitablepoint of origin. 3D scanner is a colloquial term used to describe adevice used for light detection and ranging (LiDAR) which is an opticalremote sensing technology that can measure the distance to, or otherproperties of a target by illuminating the target with light. LiDAR canbe found in two common forms: direct energy detection, also known asincoherent, and coherent detection. Coherent systems are typicallypreferred for measurement systems. Both systems are currently availablein two pulse formats: micropulse and high-energy systems. The micropulsesystems are eyesafe and require less energy to operate by this comes atthe expense of higher computational post-processing requirements. LiDARsystems currently in use are capable of collecting nearly one millionpoints per second. 3D laser scanners are commercially available (e.g.,from Tiger Supplies Inc., Irvington, N.J.; Laser Design and GKSServices, Minneapolis, Minn.; Riegl USA, Orlando, Fla. and Faro USA,Lake Mary, Fla.). In some embodiments, waveform LiDAR may be utilized.

The geo-reference data 124 may comprise, for example, latitude andlongitude data. The geo-reference data 124 may be collected from one ormore global positioning systems, survey-grade global positioningsystems, real-time kinematic positioning systems, inertial movementunits (IMUs), or other type of geo-reference device.

The environment data 128 may comprise temperature, humidity, sunlightlevels, wind speed, wind direction, altitude, air pressure, time, orother suitable properties. The environment data 128 may be collectedutilizing various sensors. For example, utilizing a thermometer, theinspection system 104 may be configured to collect temperature data. Asanother example, utilizing a hygrometer, the inspection system 104 maybe configured to collect humidity data. In still other examples, theinspection system 104, utilizing multiple sensors/devices including forexample, an actinometer, an altimeter, an anemometer, a barometer, aclock, a disdrometer, a hygrometer, a pyrheliometer, a psychrometer, apyranometer, a rain gauge, a thermometer, and/or a solar irradiancesensor, may be configured to collect various data, which may include:sunlight level; altitude; wind speed; air pressure; time; size, speed,and velocity of rain drops; humidity; light intensity; amount of rain;temperature; and/or wind direction.

All elements of the inspection system 104, whether stationary or mobile,may be configured to communicate area data 116 to the datacenter 108.The inspection system 104 may communicate area data 116 to thedatacenter 108 utilizing a direct up-link, a wireless network, aradio-link, or other connection whereby the area data 116 may becommunicated to, and received by, the datacenter 108. The area data 116may be transmitted to the datacenter 108 as a combination packetcontaining all forms of the area data 116, or with some data beingtransmitted as separate data streams to the datacenter 108.

The inspection system 104 may also be configured, utilizing a radiotransceiver or other suitable wireless communications system, to receiveand execute operation instructions 130 from the datacenter 108. Theoperation instructions 130 may include, for example, to begin collectionof data, to stop collection of data, when to collect data, and when tostop collection of data. Where the inspection system 104 is integratedwith the transport device 106, operation instructions 130 may include,for example, to move to a certain geographical point or points, when togo to a certain geographical point or points, to follow a route, to stopfollowing a route, to return to base, and other suitable operationinstructions 130. In autonomous mode, the transport device 106 may havea route programmed therein without requiring operation instructions eachtime data is to be captured. The datacenter 108 may be configured,utilizing a transceiver or other suitable wireless communication system,to receive area data 116 and to communicate operation instructions 130to the inspection system 104 and/or the transport device or mobileplatform 106.

The inspection system 104 or the transport device 106 may also receive amap of the plant area (e.g., an orchard map) and a list of tasks to beperformed from a remote controller station. As a result, the transportdevice 106 approaches the areas where data is to be collected andautomatically starts data collection when it is determined to be in theproper location within the orchard map. The inspection system 104 mayalso be configured to perform some level of pre-processing the dataprior to transmission to the datacenter 108. Pre-processing the data mayinclude verification of camera image quality, adjustment of lensesparameters (e.g., zoom, iris, shutter speed), verification of the LiDARscan readings, geo-referencing, compression, and local storage of data.Once these tasks are finished, the inspection system 104 may upload thecompressed data to the datacenter 108, where the next stage ofprocessing may occur.

The datacenter 108 includes the data processing system 132 comprisingthe software stack 134. The software stack 134 may include a dataanalysis module 136, a data classification module 138, and/or a mapgeneration module 139. The software stack 134 may receive and analyzethe area data 116 to generate analysis results 126, which may becommunicated to the dashboard 110. The analysis results 126 may includethe map 114, which may relate the image data 118, the laser scan data120, the geo-reference data 124, and the environment data 128. The mapgeneration module 139 may include 2D or 3D computer graphics software,2D or 3D modeling applications, and/or 2D or 3D modelers. The map 114may be generated by developing a mathematical representation of theplant area. The datacenter 108 may also be configured to generatevarious notifications, alerts, and/or recommendations based on theanalysis results.

The dashboard 110 may be viewable to the user on one or more displaysand/or touchscreen displays (e.g., a monitor) of a computing device(e.g., smartphone, laptop computer, desktop computer, tablet computer,etc.) associated with a user. For example, the map 114 may be presentedon a graphical user interface including graphical representations (e.g.,2D and/or 3D) graphical representations, indicating within the map 114and/or modeling the various properties within the surveyed plant area.The various properties may include growth stage, estimated crop yield,estimated plant health, disease estimate, nutrient deficiency estimate,fruit quantity, flower quantity, fruit size, fruit diameter, tree orvine height, trunk or stem diameter, trunk or stem circumference, treeor vine volume, canopy volume, color, leaf color, leaf density,temperature, humidity, sunlight levels, abnormalities, wind speed, winddirection, altitude, air pressure, time, historical data, or othersuitable properties.

The map 114 may depict a representation of the plant area using acollection of points in 2D or 3D space, connected by various geometricentities such as triangles, lines, curved surfaces, etc. In the case ofa 3D map, the map 114 may be viewed in various directions, angles, andviews. Seeing the plant area this way may enable the viewer to seechanges or improvements that need to be made to the plant area (e.g.,fertilization, pesticide, or irrigation/water changes). In someembodiments, the map 114 may show individual plants or groups of plantson the plant area. The map 114 may show analysis results 126. Theanalysis results 126 may comprise one or more properties within eachindividual plant or group plants on the area surveyed, environment data128, and other suitable data. The map 114 may have different colors orgray scales, representing the analysis results 126.

FIG. 2 is a simplified block diagram of the inspection system 104 ofFIG. 1. The inspection system 104 may comprise an environment sensorunit 140, a laser scanner unit 142, an inertial movement unit (IMU) 144,a GPS unit 146, a camera unit 148, and a radio unit 150. Each of theseunits may be operably coupled to a processor configured to coordinatecommunication therebetween as well as with communication elements tocommunicate with remote devices (e.g., datacenter 108). In someembodiments, each unit may be configured to transmit its captured dataas a separate data stream to the datacenter 108, while some data may beprocessed and transmitted as a combination packet to the datacenter 108.The inspection system 104 may also include a memory device coupled tothe processor configured to store data locally and well as to storeinstructions thereon.

The environment sensor unit 140 may comprise multiple sensors and/ordevices configured to collect various environmental data. For example,the environment sensor unit 140 may include one or more of anactinometer, an altimeter, an anemometer, a barometer, a clock, adisdrometer, a hygrometer, a pyrheliometer, a psychrometer, apyranometer, a rain gauge, a thermometer, and/or a solar irradiancesensor. The environmental data collected may include sunlight level,altitude, wind speed, air pressure, time, size, speed, and velocity ofrain drops, humidity, light intensity, amount of rain, temperature,and/or wind direction.

The laser scanner unit 142 may comprise one or more 2D and/or 3D laserscanners, as discussed above. The laser scanner unit 142 may beconfigured to generate the laser scan data (x, y, and/or z coordinates)of plants on the area to be surveyed relative to the laser scanner unit142, or some other suitable point of origin.

The inertial movement unit 144 may comprise an electronic device thatmeasures outputs, for example, the inspection system's 104 specificforce and angular rate using a combination of accelerometers andgyroscopes. In some embodiments the GPS unit 146 may be an IMU-enabledGPS unit. The inertial movement unit 144 may enable a GPS receiver tooperate when GPS-signals are unavailable.

The inertial movement unit 144 may be configured to measure anyinclination or vibration the inspection system 104 may experience duringdata collection. For example, the IMU 144 may measure any inclination orvibration the laser scanner was experiencing during data collection,which may be used to augment the precision of the laser scan data.Likewise, inertial movement unit data 121 may be used to enhance theprecision of the geo-reference data.

The GPS unit 146 may comprise a GPS receiver configured to receiveinformation from GPS satellites (e.g., geo-location and time data) andthen calculate the device's geographical position. The GPS unit 146 maycomprise a survey-grade GPS receiver. Survey grade GPS receivers offer arange of position accuracy. Depending on the particular receiver, therange may vary from within 1 meter to within 1 millimeter asnon-limiting examples.

The camera unit 148 may comprise one or more high-definition color(e.g., RGB), infrared (IR), and/or short-wave infrared (SWIR) cameras.The camera unit 148 may comprise one or more camera modules. The cameraunit 148 may be capable of capturing images at multiple focal lengths.The camera unit 148 may be configured to combine multiple exposures intoa single high-resolution image.

The radio unit 150 may comprise a radio transceiver, or other suitablemeans, configured to communicate with the datacenter 108. For example,the radio unit 150 may be configured to send area data 116 to thedatacenter 108. The communications unit may also be configured toreceive operation instructions 130 to the datacenter 108. In someembodiments, the radio unit 150 may be configured during data collectionto send, constantly or periodically, the location of the inspectionsystem 104 to the datacenter 108.

FIG. 3 is a block diagram of the data processing system 132 of thedatacenter 108 of FIG. 1. The data processing system 132 may comprise aprocessor unit 156, storage devices 168 (e.g., memory 158, persistentstorage 160), a communications unit 162, an input/output unit 164, and adisplay adapter 166 coupled to communicate via a communicationsframework 154 (e.g., communication bus).

The processor unit 156 may execute instructions for software that may beloaded into memory 158. The processor unit 156 may be a number ofprocessors, a multi-processor core, or some other type of processor.

Storage devices 168 include hardware configured to store information,such as, for example, data, program code in functional form, and/orother suitable information either on a temporary basis and/or apermanent basis. Storage devices 168 may also be referred to as computerreadable storage devices or computer readable media in this disclosure.Memory 158 may be random access memory or any other suitable volatile ornon-volatile storage device. Persistent storage 160 may take variousforms. For example, persistent storage 160 may comprise one or morecomponents or devices. For example, persistent storage may be a harddrive, a flash memory, a rewritable optical disk, or some combination ofthe above.

The communications unit 162 may be configured to provide communicationswith other data processing systems or devices that may be connected tothe data processing system 132. The communications unit 162 includescomponents, such as a transmitter, receiver, transceiver, networkinterface card, etc.

The input/output unit 164 may be configured to allow for input andoutput of data from/to a user or administrator of the datacenter 108.

The display adapter 166 may provide a mechanism to display informationon a display device that is viewable by the user or administrator of thedatacenter 108.

Instructions for the operating system, applications, and/or programs maybe located in the storage devices 168, which are in communication withthe processor unit 156 through the communications framework 154. Theprocesses of the different embodiments may be performed by the processorunit 156 using computer implemented instructions, which may be locatedin memory 158. These instructions are referred to as program code,computer usable program code, or computer readable program code that maybe read and executed by the processor unit 156. The program code in thedifferent embodiments may be embodied on different physical or computerreadable storage media, such as memory 158 or persistent storage 160.

Additionally, the program code may be located in a functional form oncomputer readable media that may be selectively removable and may beloaded onto or transferred to the data processing system 132 forexecution by the processor unit 156. The program code and computerreadable media form the computer program product. In one embodimentcomputer readable media may be computer readable storage media. Computerreadable storage media may be a physical or tangible storage device usedto store program code rather than a medium that propagates or transmitsprogram code. Alternatively, program code may be transferred to the dataprocessing system 132 over a wireless communications link.

The different components illustrated for the data processing system 132are not meant to provide architectural limitations to the manner inwhich different embodiments may be implemented. The differentillustrative embodiments may be implemented in a data processing systemincluding components in addition to and/or in place of those illustratedfor the data processing system 132. Other components show in FIG. 3 canbe varied from the examples shown. The different embodiments may beimplemented using any hardware device or system capable of runningprogram code.

FIG. 4 is a block diagram of the inspection system 104 of FIG. 1 andFIG. 2 further showing data flow according to an embodiment of thedisclosure. The inspection system 104 may comprise an environment sensorunit 140, a laser scanner unit 142, an inertial movement unit 144, a GPSunit 146, a camera unit 148, a data processing system 132, and storage178 as discussed above. The inspection system 104 may further include adata processing system 132 (e.g., an embedded processor) including apre-processing module 180 configured to perform pre-processing on thedata to generate pre-processed (PP) data 182. The PP data 182 may bestored in local storage 178. The pre-processed (PP) data 182 maycomprise PP environment data 184, PP laser-scan data 186, and PP imagedata 188.

In some embodiments, the pre-processing module 180 may be configured toperform tasks such as estimating the quality of the image data 118,making color corrections and/or brightness corrections to the image data118, adjusting the resolution of the image data 118, and other suitablepre-processing adjustments of the area data 116. If the data processingsystem 132 determines that the quality of the image data 118 is not ofsufficient quality, the inspection system 104 may be configured tore-collect data to improve the quality of the of the image data 118. Theinspection system 104 may be configured further to adjust camerasettings (e.g., shutter speed, aperture, zoom, etc.) beforere-collecting image data 118. The pre-processing module 180 may furthercomprise synchronizing the image data 118, laser scan data 120, andenvironment data 128 with the geo-reference data 124 (e.g.,geo-referencing the area data 116). In some embodiments, thepre-processing may include detecting the position of each tree byprocessing the image, determining the canopy outlines, and fusing thisinformation with GPS data.

The pre-processing of the laser scan data 120 may generate the PP laserscan data 186 as a point cloud. In some embodiments, the environmentdata 128 may also be pre-processed, such as by filtering theenvironmental data to reduce noise from the measurements (e.g., by usingstatistical digital filters such as Kalman or particle filters).

The inspection system 104 may be configured to communicate the PP data182 to the datacenter 108 during data collection or after datacollection is complete. Alternatively, during operation, the inspectionsystem 104 may capture all area data 116 and store the raw area data116. During data collection, or after data collection is complete, theinspection system 104 may communicate the raw area data 116 to thedatacenter 108 to perform pre-processing or other analysis. In someembodiments the datacenter 108, and not the inspection system 104, mayhandle all processing of the raw area data 116, including estimating thequality of the image data 118, and synchronizing and/or geo-referencingthe area data 116.

FIG. 5 is a simplified block diagram of the datacenter 108 of FIG. 1 andFIG. 3 further showing data flow according to an embodiment of thedisclosure. As discussed above, the datacenter 108 may comprise the dataprocessing system 132 and the software stack 134. The software stack 134may comprise instructions and program code for a data analysis module136, data classification module 138, and a map generation module 139.

The data processing system 132 may also comprise knowledge base (KB)data source 190. Referring briefly to FIG. 6, the KB data sources 190may comprise plant area historical data 192, past biological data 194,past climate data 196, agricultural engineering data 198, and othersuitable knowledge base data sources. The KB data sources 190 maycontain relations between past climate data 196, past biological data194, and agricultural engineering data 198 about the plant varieties(e.g., visual characteristics, nutritional characteristics, growthrates, expected reactions to weather and seasons, etc.), informationabout the area's historical yield, and records of fertilizers andpesticides applied. The KB data sources 190 may be used by thedatacenter 108 to estimate likelihoods that diseases are affectingspecific parts of the area and trigger alerts to the user. At least someof the data stored and updated within the KB data source 190 includesthe PP environment data 184 captured by the inspection system 104.

Referring again to the processes within the software stack 134 of FIG.5, the analysis modules and classification modules may comprise multipleblocks of instructions or program code. These blocks of instructions mayinclude: image segmentation 200, point cloud reconstruction 202, and 3Dimage fusion block 204, 3D element patch selector block 206,occlusion-free fruits detector 208, identification (e.g., fruit ID 222,flower ID 226, canopy ID 224, etc.), health estimation blocks (e.g.,canopy health estimation block 212, fruit disease estimation block 214,flower disease estimation block 216, disease identification block 218,etc.), and a maturity estimation block 220.

Image segmentation 200 may comprise receiving the PP image data 188 andidentifying relevant objects (e.g., fruit, flower, leaf, branch, trunk,etc.) within the PP image data 188. For example, during imagesegmentation 200 the datacenter 108 may identify which parts of the PPimage data 188 correspond to fruits 222 (“fruit ID”), tree canopy 224(“canopy ID”), and flowers 226 (“flower ID”). The result of imagesegmentation 200 may allow for the counting of fruits and flowers on thetrees with high accuracy. Thus, by identifying the portions of the PPimage data 188 correspond to fruit ID 222, the instances of each fruitmay be counted. Likewise, by identifying the portions of the PP imagedata 188 correspond to flowers 226, the instances of each flower withinthe image data 118 may be counted. In some embodiments, the counting mayoccur within the datacenter 108, while in other embodiments the countingmay be performed by the dashboard 110. Additional details for imagesegmentation will be discussed below with respect to FIGS. 7 and 8.

Point cloud reconstruction 202 may comprise assembling 3D point cloudsfrom captured laser scan data 120. This reconstruction may be in theformat of a mesh of polygons. Additional details for point cloudreconstruction 202 will be discussed below with respect to FIG. 9.

The outputs of the image segmentation 200 and the point cloudreconstruction 202 may be provided to the image fusion block 204. Theimage fusion block 204 may registering to what point cloud eachsegmented image belongs; and assembling the in the form of 3D images. Asa result, the 3D points describing the shape of the scenes and thecorresponding visual and infra-red images may be merged intomulti-dimensional surfaces that contain the image properties plus depthinformation. The image fusion block 204 may also be configured togenerate a canopy volume estimation. The 3D images generated by imagefusion block 204 are then passed on to the 3D element patch selectorblock 206.

The 3D element patch selector block 206 may utilize the information fromthe image segmentation stage to guide the extracting of the locations inthe 3D image where fruits are (e.g., for 3D fruit image patches) andwhere flowers are (e.g., for 3D flower image patches). As a result,further processing of aspects of the fruits and/or flowers may beperformed in an efficient manner by being limited areas of the 3D imagewhere fruits and/or flowers are to be considered. The 3D element patchselector block 206 may comprise receiving the location of fruits and/orflowers on the images performed by the image segmentation block 200 andfinding the corresponding fruits on the 3D image generated by the 3Dimage fusion block 204. The result may be a list of 3D fruit imagepatches and/or 3D flower image patches. The 3D fruit image patches maybe provided to the fruit disease estimation block 214, and the 3D flowerimage patches may be provided to the flower disease estimation block216.

The occlusion-free fruits detector 208 is configured to analyze 3D fruitimage patches received from the 3D element patch selector block 206 todetermine which of the 3D fruit patches are free from occlusion by otherobjects (e.g., leaves, branches, etc.). The image patches may befiltered (e.g., with de-noising and statistical filters) to remove noisefrom the image patches. In addition, the fruit diameter may bedetermined for each instance of fruit identified using corresponding 3Dlaser scan data 120 detected by the 3D element patch selector block 206.In some embodiments, the precision of this diameter determination may bewithin 10 mm.

The next several blocks (e.g., canopy health estimation block 212, fruitdisease estimation block 214, flower disease estimation block 216) mayperform health and/or disease estimation (e.g., fruit, flower andcanopy), cross-relate information from the KB data sources 190, anddetermine probabilities of anomalies that may be caused by diseasesand/or lack of nutrients or water. The KB data source 190 may includerelationships between past climate data, biological and agronomicengineering knowledge about the fruit tree varieties (e.g., visual andnutritional characteristics, growth rates, expected reactions to weatherand seasons), information about an orchard's historical yield, and therecords of fertilizers and pesticides applied to the specific orchard.These blocks then output likelihoods that diseased are affectingspecific parts of the orchard and trigger alerts to the clients.

The canopy health estimation block 212 may be configured to determine anestimation of canopy health. In particular, the canopy health estimationblock 212 may calculate a Normalized Difference Vegetation Index (NDVI)from the 3D image data from the 3D image fusion block 204 and associatethe NDVI with the biological knowledge base data 194 and the plant areahistorical data 192 from the KB data sources 190. The NDVI may becalculated from the visible and near-infrared light reflected byvegetation. Healthy vegetation absorbs most of the visible light thathits it, and reflects a large portion of the near-infrared light.Unhealthy or sparse vegetation reflects more visible light and lessnear-infrared light.

The fruit disease estimation block 214 may be configured to performfruit anomaly detection. The fruit anomaly detection may compriseassociating the characteristics of the fruit images of image data 118(e.g., color, size, shape, etc.) with information from the climate data196, biological data 194, and agricultural engineering data 198 from theKB data sources 190. The fruit disease estimation block 214 may comprisecomparing the images of image data 118 to the dataset of problematicfruits and, using statistical inference, may infer the probability ofanomalous conditions on the fruit.

The flower disease estimation block 216 may be configured to performflower anomaly detection. The flower anomaly detection may compriseassociating the characteristics of the flower images (e.g., color, size,shape, etc.) with information from the climate data 196, biological data194, and agricultural engineering data 198 from the KB data sources 190.The flower disease estimation block 216 may comprise comparing theimages of image data 118 to the dataset of problematic flowers and,using statistical inference, may infer the probability of anomalousconditions on the flower.

The disease identification block 218 may receive the outputs (e.g.,probabilities of anomalous conditions) from each of the canopy healthestimation block 212, the fruit disease estimation block 214, and theflower disease estimation block 216 and determine whether a disease ispresent for a plant in the plant area, and if so, a determined identity(e.g., diagnosis) for that disease. The result of the diseaseidentification block 218 may then be transmitted to the dashboard 110.

The maturity estimation block 220 may be configured to use informationfrom the KB data sources 190 to correlate the information contained withthe fruit counts, fruit diameters, and classification labels of thatspecific variety of fruit (e.g., from the image segmentation block). Forexample, the maturity estimation block 220 may classify the maturitystage of the tree by correlating the data about the maturing class anddiameter of each fruit with the processed biological knowledge base data194 and the plant area historical data 192. The maturity stage estimatemay also be used by the datacenter 108 to predict a desired ripeningdate and provide a recommendation for the application of particularnutrients and/or fertilizers to try to align the ripening data with thedesired ripening date from the current maturity stage estimate.

In some embodiments, the dashboard 110 may receive the various outputs(e.g., fused 3D image data, segmented images and associated ID,geo-reference data, environment data, disease estimates andidentification, maturity estimation, etc.) from the datacenter 108 to bedisplayed in various formats (e.g., charts, graphs, lists, etc.) on agraphical user interface of the dashboard 110. As a result, propertiesmay be presented to the user via the dashboard 110 including growthstage, estimated crop yield, estimated plant health, disease estimate,nutrient deficiency estimate, fruit quantity, flower quantity, fruitsize, fruit diameter, tree or vine height, trunk or stem diameter, trunkor stem circumference, tree or vine volume, canopy volume, color, leafcolor, leaf density, temperature, humidity, sunlight levels,abnormalities, wind speed, wind direction, altitude, air pressure, time,or other suitable properties. The datacenter 108 may also be configuredto generate various notifications, alerts, and/or recommendationsresponsive to analyzing the data that may also be transmitted (e.g.,pushed) to the dashboard 110.

As discussed above, the dashboard 110 may display a map of the plantarea with icons and/or other indicators representing different plants,fruits, flowers, etc., and associated data determined from the analysispresented herein. In some embodiments, the map may be generated at thedevice associated with the dashboard 110. Thus, the processing of theoutput data and construction of the map may be performed by the deviceremote from the datacenter 108. In addition, counting instances offruits, flowers, etc., may also be performed at the device remote fromthe datacenter 108. In another embodiment, the datacenter 108 may beperform the processing and analysis to generate the map. As a result,the dashboard 110 may simply be configured as a thin client thatretrieves and displays the map data created by datacenter 108.

FIG. 7 is a flowchart 700 illustrating a method for image segmentationaccording to an embodiment of the disclosure. In particular, the methodmay provide additional description for the image segmentation block 200of FIG. 5 as executed by the processor of the datacenter 108. The imagesegmentation block receives the images from the sensor hardware,identifies relevant features within the images, and identifies whichextracted features within the image corresponds to fruits, flowers, andthe tree canopy.

At operation 702, the processor may receive the image data from theinspection system. The image data may include color images captured by acamera and/or infrared images captured by an IR camera. The processormay also perform pre-processing on the images in some embodiments, suchas color and brightness correction, resolution adjustment, filtering,edge or contrast enhancements, etc.

At operation 704, the (pre-processed) image data may be sliced intosmaller parts for feature extraction. Slicing the data into smallerparts may enable faster processing of image data, particularly for highresolution images. During feature extraction, parameters such as color,textures, geometries, sizes are extracted by several feature detectors.

At operation 706, these features are then sent to the supervisedlearning classifiers that have been trained from a large number ofexamples to classify features jointly on so called ‘classes’ of objects(e.g., green fruit, ripe-ready fruit, sick fruit, sick leaves andflowers) according to multi-class segmentation and objectclassification. The classification is scale invariant, and the number ofclasses is variable. The classifiers output the location of the objectson the image, as well as the image area where the tree's canopy islocated.

At operation 708, each location may be tagged with a label describingthe class of the element and a scalar number representing the confidenceto which it belongs to the class. The supervised learning classifiersmay include deep neural networks and support vector machines that havebeen trained from a large number of examples to classify classes ofobjects. Support vector machines are supervised learning models withassociated learning algorithms that analyze data used for classificationand regression analysis. For example, given a set of training examples,each marked as belonging to one or the other of two categories, thesupervised learning process builds a model that assigns new examples toone category of the other. This is an example of a non-probabilisticbinary linear classifier. However, the supervised learning classifiersmay be probabilistic classifiers and may be further configured to assigna scalar number representing a confidence level associated with theclassification. For example, the scalar number may range from 1 to 99.99 may represent a confidence level near absolute certainty and 1 mayrepresent near absolute uncertainty. Other confidence scales and rangesare also contemplated.

At operation 710, the classifier may be trained during each segmentationand classification process for further improving classification forsubsequent use. The training may include further analyzing the datasetdepending on the variety of the fruit and other agricultural engineeringparameters, and also learn new types of elements by defining new classesthat did not exist previously.

FIG. 8 is a flowchart 800 illustrating a method for point cloudreconstruction of a plant according to an embodiment of the disclosure.In particular, the method may provide additional description for thepoint cloud reconstruction 202 of FIG. 5. The point cloud reconstructionmay be assembled from captured LiDAR scans.

At operation 802, the processor may receive positioning data (e.g., IMUdata and GPS data). At operation 804, the IMU data and the GPS data arefused using the gyros, accelerometer and compass of the IMU to measureany inclination or vibration the inspection system experienced at thetime the LiDAR scan was performed and to augment the precision of theGPS measurement which provides the global position in reference to theEarth frame.

At operation 806, the processor may receive laser scan data and be fused(operation 808) with the IMU/GPS motion estimation through a processsuch as an iterative closest point (ICP) and a reconstructed LiDAR pointcloud is produced (operation 810). ICP is an algorithm employed tominimize the difference between two clouds of points. ICP is often usedto reconstruct 2D and/or 3D surfaces from different laser scans. Eachiteration of these processes, a new LiDAR scan may be retrieved and,based on the timestamps, matched with the corresponding pose andposition of the sensor. At operation 812, the point cloud may betransformed into a mesh of polygons after having its normal computed.

FIG. 9 is a schematic block diagram representing the dashboard 110according to embodiments of the disclosure. The dashboard 110 maycomprise estimations presented to the user, which may consolidate thearea data 116. The dashboard 110 may provide visualization by specificperiods or ranges of dates. The dashboard 110 may show the evolution ofthe plant area over time. The dashboard may allow comparison betweenperiods. The dashboard 110 may display crop forecasts 312 and/or cropyield 314. The dashboard 110 may display recommendations 316 to thefamer on whether to adjust the amount of pesticides, fertilizers, water,and/or other suitable adjustments. The dashboard 110 may displayinformation about the plant area (e.g., orchard) such as canopy volume300, average fruit diameter 302, fruit count 306, flower count 304,maturity curve 310, and a disease map 308. In some embodiments, thedashboard 110 may present the results of the above analysis in the formof a map, as charts or graphs, as numerical information, as ananimation, or other forms of graphically presenting information to theuser. The dashboard 110 may include input fields or other interactivefeatures to filter data, change data fields shown by the dashboard,change date ranges or other features as desired by the user.

FIG. 10 is a screenshot of an exemplary view of the dashboard 110according to embodiments of the disclosure. The dashboard 110 mayinclude a map 1050 showing the plant area being surveyed. The map 1050may include icons 1052 representative of an instance of a plant (orportion thereof) that has been analyzed and classified accordingembodiments herein. The geolocation data may be used to assign thelocation of the icon on the map to be the proper location relative tothe other data measurements. The icons may be represented differently toindicate certain classifications (e.g., healthy, diseased, black (i.e.,rotten)) for easy understanding by the user. The map may be aninteractive map that enables the user to select properties, individuallyor in groups, to view in the map. In another example, the dashboard 110may be configured to enable the user to select one of the icons 1052 toview additional data specifically assigned to that icon. For example,selecting an icon 1052 may cause the image data to open and be viewableby the user. Additional data, such as health or disease information maybe viewable for each specific icon when selected. In addition, thedashboard 110 may include filtering features that enable the user toonly show certain information according to common classifications. Forexample, if a user only desires to see where ripe fruit has beenidentified, the user may make such a selection and the icons related tounripe fruit may be removed from view on the map 1050 for the user tomore easily identify. Similar selections may be possible for viewingonly diseased fruit or rotten fruit.

The dashboard 110 may also include additional aggregated informationsuch as an overview 1060 that shows information for an entire plant areasuch as the total images available for that area, marked images, totaltrees identified within the images, total fruit identified within theimages, a histogram of fruit diameter over time, a total number of fruitthat is not ripe, a total number of fruit that is ripe, and a total ofdiseased fruit. Another area may be dedicated to providing similarinformation a specific field 1070 of a larger area. In some embodiments,the dashboard 110 may also display information from the KB data sourcesabout the selected tree variety, the farm, and/or cultivar, or fromexternal data sources such as a farmer's database including dates anddetails about the application of fertilizer, irrigation, diseasetreatment, etc.

FIG. 11 is a flowchart 400 illustrating a method for generating a map114 of a plant area showing area data 116 in the map 114. In operation,the inspection system 104 begins collection of area data 116, 402. Theinspection system 104 collects area data 116 comprising laser scan data120, image data 118, environment data 128, and geo-reference data 124 ofdata 404. The area data 116 is pre-processed by the inspection system104 and stored 406. The data collection ends 408. The area data 116 iscommunicated to the datacenter 108, 410. The datacenter 108 receives thearea data 116 from the inspection system 104, 412. The datacenter 108uses the laser scan data 120 to reconstruct a 3D point cloud 414. Thedatacenter 108 processes and segments the image data 118, 416. Thedatacenter 108 uses the segmented image data, 3D point cloud data, andKB data sources 190 to generate analysis results 126, 420. Thedatacenter 108 combines the processed and segmented image data and the3D point cloud data to generate a 3D model of each plant 422. Thedatacenter 108 combines the geo-reference data 124, the 3D model of eachplant, and the analysis results 126 to generate a 3D map 114 of theplant area 424. The dashboard 110 displays the 3D map 114 and theanalysis results 126 to the user 426.

In other embodiments, the datacenter 108 may analyze and classify thearea data 116 and output at least one of a group of: 3D tree images, 3Dvine images, 3D fruit images, fruit diameter estimations, trunk diameterestimations, vine diameter estimations, maturity stage estimations,canopy health estimations, flower anomalies, fruit anomalies, leafanomalies and other suitable estimations.

The datacenter 108 may generate a 2D and/or 3D map showing at least oneof a group of: 3D tree images, 3D vine images, 3D fruit images, fruitdiameter estimations, trunk diameter estimations, vine diameterestimations, maturity stage estimations, canopy health estimations,flower anomalies, fruit anomalies, leaf anomalies and other suitableestimations.

The 2D and/or 3D map 114 may include different colors or gray scales,depending on the area data 116. The 3D map 114 may also include variousicons indicating various properties within the plant area. The digital3D map 114 may also include various notifications and/or alertsindicating various properties within the surveyed plant area. In someembodiments, the 3D map 114 may include graphical representations,including 2D and 3D graphical representations, indicating and/ormodeling the various properties within the plant area.

The datacenter 108 may generate recommendations (e.g., pesticideadjustments, fertilizer adjustments, irrigation and water adjustments,and other suitable adjustments). The 2D and/or 3D map andrecommendations may be viewed by the user on the dashboard 110.

While certain illustrative embodiments have been described in connectionwith the figures, those of ordinary skill in the art will recognize andappreciate that the scope of this disclosure is not limited to thoseembodiments explicitly shown and described in this disclosure. Rather,many additions, deletions, and modifications to the embodimentsdescribed in this disclosure may be made to produce embodiments withinthe scope of this disclosure, such as those specifically claimed,including legal equivalents. In addition, features from one disclosedembodiment may be combined with features of another disclosed embodimentwhile still being within the scope of this disclosure, as contemplatedby the inventor.

1. (canceled)
 2. A crop yield estimation system for detecting one ormore properties of a plant area, the crop yield estimate systemcomprising: an inspection system mountable to a transport device, theinspection system comprising: a global positioning system; an imagingsystem; at least one processor; and at least one non-transitorycomputer-readable storage medium storing instructions thereon that, whenexecuted by the at least one processor, cause the inspection system to:capture image data of the plant area via the imaging system; receivegeolocational data via the global positioning system; associate, at theinspection system, image data with the received geolocational data; anda datacenter remote from the inspection system, the datacenterconfigured to: receive the image data and the geolocational data fromthe inspection system; analyze the image data and the geolocational datavia one or more machine learning techniques to identify the one or moreproperties of the plant area and locations of the one or moreproperties; and responsive to the identified one or more properties,generate one or more automated recommendations for crop managementactions in one or more areas of the plant area; and a dashboardconfigured to display the generated one or more automatedrecommendations.
 3. The crop yield estimation system of claim 2, whereingenerating the one or more automated recommendations for crop managementactions in one or more areas of the plant area comprises generatingrecommendations for at least one of a dosing of fertilizers, a dosing ofpesticides, an amount of irrigation, types of fertilizers, or types ofpesticides.
 4. The crop yield estimation system of claim 2, wherein theinspection system further comprises at least one of an environmentsensor unit, an inertial movement unit, or a radio unit.
 5. The cropyield estimation system of claim 2, wherein capturing the image data ofthe plant area via the imaging system further comprises capturing atleast three dimensional (3D) and two dimensional (2D) data.
 6. The cropyield estimation system of claim 5, wherein the at least onenon-transitory computer-readable storage medium storing instructionsthereon that, when executed by the at least one processor, cause theinspection system to generate preprocessed data including determiningone or more of a color, brightness, and resolution of the image data 7.The crop yield estimation system of claim 6, wherein generatingpreprocessed data further includes correcting the color of the imagedata.
 8. The crop yield estimation system of claim 6, wherein generatingpreprocessed data further includes correcting the brightness of theimage data.
 9. The crop yield estimation system of claim 6, whereingenerating preprocessed data further includes adjusting the resolutionof the image data.
 10. The crop yield estimation system of claim 6,wherein generating the pre-processed data further comprises determiningif the one or more of the color, the brightness, or the resolution ofthe image data is below a threshold requirement, and recapturing theimage data until the one or more of the color, the brightness, or theresolution of the image data meets the threshold requirement.
 11. Thecrop yield estimation system of claim 6, wherein the datacenter isfurther configured to determine and generate output data based at leastpartially on the pre-processed data, wherein the output data comprisesat least one of growth stage, estimated crop yield, estimated cropforecast, estimated plant health, disease estimate, nutrient deficiencyestimate, fruit quantity, flower quantity, fruit size, fruit diameter,tree or vine height, trunk or stem diameter, trunk or stemcircumference, tree or vine volume, canopy volume, color, leaf color,leaf density, plant abnormalities, historical data, biological data, andagricultural engineering data.
 12. A crop yield estimation system forgenerating a map of a plant area indicating at least one property of theplant area, the system comprising: an inspection system comprising: aglobal positioning system; an imaging system; a communication system; atleast one processor; and at least one non-transitory computer-readablestorage medium storing instructions thereon that, when executed by theat least one processor, cause the inspection system to: capture imagedata of the plant area via the imaging system; receive geolocationaldata via the global positioning system; associate, at the inspectionsystem, the image data with the received geolocational data; andgenerate pre-processed data including the image data and the associatedgeolocational data; a datacenter remote from the inspection system, thedatacenter and in communication with the inspection system via thecommunication system, wherein the datacenter is configured to: receivethe pre-processed data from the inspection system; analyze thepre-processed data via one or more machine learning techniques toidentify the at least one property of the plant area and locations ofthe identified at least one property; responsive to the identified atleast one property, generate one or more automated recommendations forcrop management in one or more areas of the plant area; generate a mapof the plant area using the identified at least one property of theplant area and a location of the identified at least one property,wherein the map includes at least one icon indicating the identified atleast one property, wherein a position of the at least one icon withinthe map correlates to the location of the at least one identifiedproperty; and a dashboard configured to display the map and thegenerated one or more automated recommendations.
 13. The crop yieldestimation system of claim 12, wherein the imaging system comprises atleast one of a high-definition infrared camera, an inertial movementunit, stereoscopic cameras, a laser scanner (LiDAR), or a radio unit.14. The crop yield estimation system of claim 12, wherein capturing theimage data of the plant area via the imaging system further comprisescapturing at least three dimensional (3D) and two dimensional (2D) data.15. The crop yield estimation system of claim 14, wherein the datacentercomprises: a data processing system comprising a communicationsframework, a processor unit, memory, persistent storage, acommunications unit, an input/output unit, knowledge base data sources,and a software stack; wherein the datacenter is configured to:reconstruct three-dimensional (3D) point cloud data using the at leastthree-dimensional (3D) image data and two-dimensional (2D) image datacaptured via the imaging system; segment the at least three-dimensional(3D) image data and two-dimensional (2D) image data to generatesegmented image data; use the segmented image data, the reconstructedthree-dimensional (3D) point cloud data, and the knowledge base datasources to identify the properties of the plant area; combine thesegmented image data and the reconstructed three-dimensional (3D) pointcloud data to generate a three-dimensional (3D) model of each plant ofthe plant area; and combine the three-dimensional (3D) model of eachplant and the identified properties of the plant area to generate themap of the plant area.
 16. A method for generating a map of a plant areaindicating one or more properties of one or more plants in the plantarea, the method comprising: moving an inspection system across theplant area; capturing image data of the plant area via an imagingsystem; receiving geolocational data from a global positioning system;associating, at the inspection system, the image data with the receivedgeolocational data; generating pre-processed data including the imagedata and the associated geolocational data; transmitting, from theinspection system and to a datacenter remote from the inspection system,the pre-processed data; analyzing, with the datacenter, thepre-processed data via one or more machine learning techniques toidentify the one or more properties of the plant area and locations ofthe one or more properties; responsive to the identified one or moreproperties, generating one or more automated recommendations for cropmanagement in one or more areas of the plant area; generating, with thedatacenter, a three-dimensional map using the image data, the automatedrecommendations, and the one or more areas of the plant area associatedwith the automated recommendations, in which indications of theautomated recommendations are visible in the map in positionscorrelating to the one or more areas of the plant area associated withthe automated recommendations; and displaying the map on dashboardviewable by a user and the generated one or more automatedrecommendations.
 17. The method of claim 16, wherein capturing the imagedata of the plant area via the imaging system further comprisescapturing at least three dimensional (3D) and two dimensional (2D) data.18. The method of claim 17, wherein generating the map of the plant areacomprises: reconstructing three-dimensional (3D) point cloud data usingthe captured at least three-dimensional (3D) image data and thetwo-dimensional (2D) image data; segmenting the at leastthree-dimensional (3D) image data and the two-dimensional (2D) imagedata to generate segmented image data; combining the segmented imagedata and the three-dimensional (3D) point cloud data; generating athree-dimensional (3D) model of each plant of the plant area based atleast partially on the combined segmented image data andthree-dimensional (3D) point cloud data; and combining the geolocationaldata, the three-dimensional (3D) model of each plant, the identified oneor more properties, and the locations of the identified one or moreproperties to generate the map of the plant area.
 19. The method ofclaim 16, further comprising: based at least partially on the identifiedone or more properties, predicting a ripening date of fruit of plantswithin the plant area; and generating the one or more automatedrecommendations for crop management to adjust a ripening date of thefruit plants within the plant area.
 20. The method of claim 16, furthercomprising segmenting the pre-processed data to identify which parts ofthe pre-processed data correspond to fruits, tree canopy, and flowers.21. The method of claim 20, further comprising determining whichidentified fruits are free from occlusion by other objects.